System, device, and method of detecting, mitigating and isolating a signaling storm

ABSTRACT

Detecting, mitigating and isolating a Signaling Storm, particularly in 5G communication networks. A Control Plane signal probe is connected at a first network node located between a Radio Access Network and a 5G Core Network, to monitor control messages originating from 5G-capable devices. A User Plane signal probe is connected at a second network node located between the 5G Core Network and remote entities to which the 5G-capable devices are sending messages, to monitor control messages passing through the second network node. An Inventory Management sub-system stores data correlating between 5G-capable devices and IMSI numbers. A Protector Unit is configured to receive (i) data collected by the Control Plane signal probe, and (ii) data collected by the User Plane signal probe, and (iii) a subset of IMSI numbers. The Protector Unit performs Machine Learning analysis, and detects and quarantines particular 5G-capable devices that are compromised or malfunctioning.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Continuation-in-Part (CIP) of U.S. Ser. No. 16/018,076, filed on Jun. 26, 2018, which is hereby incorporated by reference in its entirety; which claims benefit and priority from U.S. 62/525,202, filed on Jun. 27, 2017, which is hereby incorporated by reference in its entirety.

FIELD

The present invention relates to network-connected devices, and particularly to “Internet of Things” (IoT) devices.

BACKGROUND

Electronic devices and computing devices are utilized on a daily basis by millions of users worldwide. For example, laptop computers, desktop computers, smartphone, tablets, and other electronic devices are utilized for browsing the Internet, consuming digital content, streaming audio and video, sending and receiving electronic mail (email) messages, Instant Messaging (IM), video conferences, playing games, or the like.

An “Internet of Things” (IoT) device is an appliance, machine or device that is able to communicate over a network with a remote server or with a remote recipient. For example, an IoT lightbulb may enable a user to control such lightbulb through his smartphone. Similarly, an IoT smoke detector may provide alert notifications to a smartphone of a remote user if smoke is detected.

SUMMARY

Some embodiments of the present invention may provide systems, devices, and methods of adaptive network protection for managed Internet-of-Things (IoT) services. For example, a network traffic monitoring unit monitors data traffic, operations-and-management traffic, and control messages, that relate to cellular communication between an IoT device and a core cellular network. An IoT grouping unit groups multiple IoT devices into a particular IoT group. A baseline behavior determination unit determines a Regular Baseline Cellular Communication Behavior (RBCCB) profile that characterizes the cellular communications that are outgoing from and incoming to each member of the particular IoT group. An outlier detector subsequently detects that a particular IoT device of that particular IoT group, exhibits cellular traffic characteristics that are abnormal relative to the RBCCB profile that was characterized for that particular IoT group. An enforcement actions generator is triggered to selectively perform one or more enforcement operations, notification operations, and quarantine operations.

The present invention may provide other and/or additional advantages and/or benefits.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of a system, in accordance with some demonstrative embodiments of the present invention.

FIG. 2 is a schematic illustration of a sub-system, in accordance with some demonstrative embodiments of the present invention.

FIG. 3 is a schematic block-diagram illustration of a Traffic Sensing and Enforcement (TSE) unit, in accordance with some demonstrative embodiments of the present invention.

FIG. 4 is a schematic illustration of a demonstrative system in which the detection and protection solutions of the present invention may be implemented.

FIG. 5 is a schematic illustration of Protector Unit and its components, as well as its interfaces to the mobile network(s), in accordance with some demonstrative embodiments of the present invention.

FIG. 6A is a schematic illustration of a system, demonstrating the integration of units of the present invention in a 5G NR network controlled by EPC, or in a 5G Non-Stand Alone (NSA) network.

FIG. 6B is a schematic illustration of a system, demonstrating the integration of units of the present invention in a 5G Stand Alone (SA) network.

FIG. 7 is a schematic illustration of a system, demonstrating the deployment or integration of units of the present invention in an Open RAN cellular communication network.

DETAILED DESCRIPTION OF SOME DEMONSTRATIVE EMBODIMENTS

The term “IoT service” may comprise or may be a distinct IoT-based service or unit or device or module or sensor, such as, for example, soda vending machines, cameras, Internet-connected cameras, Internet Protocol (IP) connected devices or sensors, IP-camera, IP-sensor, or other network-connected devices that are employed or managed or administered by a specific corporation or entity or organization. For example, a corporation or an organization may utilize multiple “IoT services” or multiple such IoT devices or sensors concurrently, typically spread across multiple or numerous geo-spatial locations, or covering an area or region.

The term “managed IoT service” may comprise or may be an “IoT service” receiving IoT-specific offering from a corresponding Communication Service Provider (CSP), distinct from the general population of the CSP subscribers such as mobile phones. In accordance with the present invention, the exact offering details may vary between CSPs; it may comprise cyber-security and network protection as part of a value proposition, mainly addressing the following high-level concerns: (1) Service continuity; (2) Data exfiltration, data leak prevention; (3) Reputation protection, IoT device abuse protection.

The present invention comprises a centralized network system for CSPs, providing automated protection for managed IoT services under their control, via adaptive learning; requiring little or no manual provisioning and/or manual supervision, and featuring automated or automatic detection of security-related issues or threats, and (optionally) automated or semi-automated fixing of security-related problems or threats.

The Applicants have realized that the collection of IoT devices comprising a managed IoT service, typically presents or exhibits a relatively (or generally) coherent, consistent, stable and/or predictable network behavior, which can be monitored and tracked and logged, and which can be utilized in order to detect an anomaly or irregular network activity of IoT device(s), particularly if such IoT devices that were compromised (e.g., by an attacker, a human attacker, an automated attack unit) and/or that are defective or malfunctioning. This is contrasted with a general population of network hosts, including mobile phones and personal computers, which normally present considerably less predictable and/or less network behavior.

For example, the Applicants have realized that a set of end-user devices, such as smartphones and laptops of employees of an organization, exhibit less predictable network activity and/or data traffic activity; for example, since a first end-user may utilize his device to perform only local word processing operations and may barely communicate over the network, whereas a second end-user may utilize her device to engage in high-bandwidth video conferencing activity; and such usage patterns are often unpredictable. In contrast, a set of IoT devices, such as, an array of Internet-connected vending machines, or an array of Internet-connected smoke detectors, exhibit a generally stable and predictable network behavior and/or traffic activity; for example, each vending machine sends 3 kilobytes of data every hour on the hour, and also sends additional 7 kilobytes of data once a day at 3 AM. Accordingly, the system of the present invention may utilize this information in order to detect anomalies; for example, observing that ten vending machines are currently sending 800 kilobytes of data every 12 minutes, or that one vending machine is currently sending 240 kilobytes of data every minute, triggers a determination that this or these vending machine(s) is (or are) malfunctioning and/or compromised.

Reference is made to FIG. 1, which is a schematic illustration of a system 100, in accordance with some demonstrative embodiments of the present invention. System 100 depicts a demonstrative deployment options for managed IoT services within (or in relation to) one or more Mobile Network Operator (MNO) networks, in accordance with some demonstrative embodiments of the present invention.

For demonstrative purposes, three sets of IoT devices are shown, denoted set 101, set 102, and set 103. Each set of IoT devices, or each IoT device, communicate (directly, or indirectly via an IoT aggregator) with a Radio Access Network (RAN), which in turn communicates with a Core Network 105) of a Communication Service Provider (CSP). The core network communicates with the Internet 110, utilizing two separate communication channels: an Operations, Administration and Management (OA&M, or O&M) channel, and a data traffic channel. IoT Service A (111) and IoT Service B (112) are demonstrative added-value services that are provided by the CSP to the enterprise owning the IoT devices. An enterprise backend 115 and/or OA&M Terminals 116 are utilized to administer, control and manage the IoT devices of the enterprise.

The first set 101 of IoT devices belong to Enterprise 1, and they communicate with RAN 104 indirectly, via an IoT Aggregator unit or node. This set 101 of IoT devices, with their respective IoT aggregator, utilizes a dedicated Access Point Name (APN) that is dedicated to that particular Enterprise 1, and is denoted APN1.

The second set 102 of IoT comprises: IoT devices belonging to Enterprise 2, and IoT devices belonging to Enterprise 3. They communicate with RAN 104 via a dedicated APN, denoted APN2, which is dedicated only to the IoT devices that belong to Enterprise 2 and Enterprise 3.

The third set of IoT devices 103 comprises: IoT devices belonging to Enterprise 4, and IoT devices belonging to Enterprise 4, and consumer/end-user devices (e.g., smartphones, tablets, laptop computers) belonging to various individual subscribers. They communicate with RAN 104 via a non-dedicated Common APN, denoted APN3, which is utilized by the IoT devices that belong to Enterprise 4 and/or to Enterprise 5 and/or by end-user device of other subscribers or users (e.g., non-IoT devices, but rather, end-user devices that are operated by human users).

As demonstrated, the network access of an IoT device may be Direct or Indirect. In a Direct network access, each IoT device connects directly to the RAN of the CSP network. In an Indirect network access, multiple IoT devices connect to an IoT access aggregator, which in turn communicates with the RAN of the CSP network.

As demonstrated, the network access may utilize a dedicated APN or a common APN. For example, a dedicated APN may be used for managed IoT services, per corporate customer; such that all IoT devices pertaining to the managed IoT services of said particular customer utilize a customer-dedicated APN. Additionally or alternatively, dedicated APN may be used for managed IoT services that are shared among multiple corporate customers; such that all the IoT devices pertaining to a set of managed IoT services (and belonging to multiple different customers) use a dedicated APN, distinct from APNs used by other types of subscribers (e.g., mobile phones). Additionally or alternatively, a common APN may be used, such that IoT devices pertaining to a set of managed IoT services utilize a common APN, which is also utilized by the general subscriber population (e.g., mobile phones).

The system may utilize a suitable RAN 104, for example, Third Generation Partnership Project (3GPP), Narrow-Band IoT (NB-IoT), 4G/Long Term Evolution (LTE), Universal Mobile Telecommunications System (UMTS), or other RAN types; including for example, IoT-specific RAN types such as LoRa, Sigfox, or the like.

The communication channels used by the system include an Operations, Administration and Management channel (OA&M channel, or O&M channel); such as, a dedicated channel for OA&M operations, between IoT devices and an IoT OA&M platform. The OA&M platform may reside on MNO premise, and/or on the public Internet (such as within a public cloud). The OA&M channel may be secured, for example, via Virtual Private Network (VPN) tunneling.

The communication channels used by the system further include a data channel; such as, data traffic between IoT devices and the public Internet, which is not covered by (or not transported by) the OA&M channel. This may include applicative traffic between IoT devices and their corresponding backend, depicted as “IoT service” cloud icons.

A Traffic Sensing and Enforcement (TSE) unit 106 may be deployed at one or more suitable points or nodes, or between particular network nodes or network elements; for example, in the MNO's core network in an inline manner, where the TSE unit 106 has visibility of (and can listen to, or monitor) the network traffic of managed IoT services. In some embodiments, optionally, this network deployment may correspond to (or may utilize) the Gi interface in 3GPP architecture, or other suitable interface. In some embodiments, optionally, the TSE unit 106 may optionally be associated with, or may optionally be controlled by or accessible by, an IoT platform 107 located on MNO premise; which in turn may be accessible by, and/or may communicates with, a global IoT platform 108; or, in some implementations, optionally, the TSE unit 106 may be associated with, or report to (or send alerts or notifications to) another suitable IoT back-end element or IoT control panel or IoT management unit.

For demonstrative purposes, a single TSE unit 106 is shown; however, two or more TSE units may be utilized, and a processor or a decision-making unit may operate based on data that is monitored or collected by such multiple TSE units. Additionally or alternatively, for demonstrative purposes, the TSE unit 106 is shown as located at network point 121, which is between the CSP core network 105 and the Internet 110; however, one or more such TSE unit(s) may be deployed in other network location(s), for example, at location 123 between the RAN 104 and the CSP core network 105, at location 124 between the RAN 104 and the first set 101 of IoT devices having an IoT aggregator, at location 122 between the RAN 104 and the second set 102 of IoT devices, at location 125 between the RAN 104 and the third set 103 of IoT devices, and/or even as post-Internet listening/monitoring nodes such as at locations 126 and/or 127.

The various TSE unit(s) may monitor one or more types of packets or data-streams; for example, data traffic, payload, headers, OA&M packets or messages, signaling and/or control messages, Internet Protocol (IP) packets, IPv4 packets, IPv6 packets, cellular packets, non-IP packets, packets having cellular-network internal format, Packet Data Protocol (PDP) format, 3GPP data or packets, 2G or 3G or 4G or 4G-LTE or 5G data or packets, or the like.

In some embodiments, one or more TSE unit(s) may be connected or deployed (and may monitor network traffic and/or packets) at a location or node which is, for example, post-PGW (after the Packet Data Network Gateway of a mobile core network, such as, monitoring and/or analyzing and/or filtering or quarantining traffic that the PGW outputs or transfers-out or relays), or at a location that interfaces between an LTE network and other packet data networks (such as the Internet, or SIP-based IMS network); or at a location or node between the Serving Gateway (SGW) and the PGW, or between a 2G system and PGW, or at a location between 3G system and PGW, or between LTE system and other 3GPP-based system, or even between an Evolved Node B (or eNodeB, or eNB, or E-UTRAN Node B) and the SGW, or at an interface or relay node of network element of a mobile phone network that communicates directly wirelessly with the mobile handset (User Equipment or UE). Accordingly, the TSE unit(s) may monitor and/or analyze the output that is generated or outputted or relayed or passed-through by any of the above-mentioned units or nodes or network elements.

It is clarified that the TSE unit(s) of the present invention may perform not only traffic monitoring and traffic analyzing operations, but rather, may also perform one or more mitigation operations once an anomaly or abnormality is detected or is estimated; for example, a quarantine process that effectively quarantines an IoT device that is determined (or estimated) to be compromised or malfunctioning, by blocking or discarding or non-relaying packets and/or signals and/or messages and/or payload that are received from such IoT device (e.g., all such outgoing traffic from the IoT device, or selectively only a portion of the outgoing traffic that is intended to reach a particular destination) and/or that are directed to such IoT device (e.g., all such incoming traffic that is directed towards the IoT device, or selectively only a portion of the incoming traffic that is intended to reach the IoT device from a particular sender). The selective quarantining operations may thus isolate the malfunctioning or the compromised IoT device from other hosts or destinations or servers on the network, and/or may isolate the malfunctioning or the compromised IoT device from the public Internet and/or from one or more particular destinations or particular senders and/or from one or more particular domains or servers; thereby curtailing or mitigating or eliminating possible damage that may be caused by further communications from or to such malfunctioning or compromised IoT device.

Reference is made to FIG. 2, which is a schematic illustration of a sub-system 200, in accordance with some demonstrative embodiments of the present invention. Sub-system 200 may be, for example, a demonstrative implementation of (or a part of) the TSE unit 106 of FIG. 1, or a component of system 100 of FIG. 1, or a sub-system implemented at network location 121 and/or 122 and/or 123 and/or 124 and/or 125 and/or 126 and/or 127, or a sub-system implemented within (or in conjunction with) the CSP core network 105 and/or the RAN 104. Sub-system 200 may be implemented using one or more units or modules, for example, a controller 210 and a sensor/enforcer 220.

A Sensor Unit 221, or other sensing or listening or tracking or monitoring unit, sees or listens or monitors or tracks or captures or collects all the relevant network traffic (e.g., via Gi interface), as well as subscriber (IoT device) address mapping information (e.g., provided by a Subscriber Mapping unit 230, via Sm interface).

The mapping may be performed, for example, in two stages: (i) identifying which traffic (e.g., directed to which IP address, and/or incoming from which IP address) belong to which Subscriber Identity Module (SIM) card (e.g., based on International Mobile Subscriber Identification (IMSI) process or data, based on Mobile Station International Subscriber Directory Number (MSISDN identification process or data); (ii) identifying the type of IoT device, such as by mapping or classifying a particular IoT device into a class or group or type of IoT devices (e.g., soda vending machines; metering units of an electric company; smoke detectors; or the like).

The first stage, of mapping of traffic to a particular SIM, may be performed based on signaling of the cellular network, such as by extracting the mapping data from the signaling itself, and/or by receiving the mapping data from or via radius accounting from a radius server or a Policy Charging and Control Function (PCRF) of the cellular network.

The second stage, of mapping or classifying a particular SIM card to a particular type of IoT devices, may be performed in one or more suitable ways; for example, based on data received via integration with SIM(s) management platform (e.g., a network entity or element or unit that handles or manages the connectivity IoT SIMs), and/or by traffic profiling. For example, traffic profiling may be performed by monitoring device traffic to create and update a profile of the device behavior, such as which domain(s) it accesses on a regular basis, and then creating and updating a behavior profile database of various devices, which then enables to match a device to an existing device-profile; as a demonstrative example, a Tesla connected car may typically communicate with the domain “Tesla-Telemetry-Service.com”, whereas a certain model of soda vending machines may communicate only with the domain “Best-Cola-Support.com”, whereas the measuring units of an electricity company may communicate only with the domain “Local-Power-And-Light.com”, and so forth; and accordingly, based on aggregation of data from multiple devices that access the same domain, a classification of IoT devices may be created with an accompanying profile, and detection of communication behavior that matches such profile may be used to identify the type of an IoT device.

The Sensor Unit 221 monitors and collects the following data for each of the endpoints identified as managed IoT devices, and/or for each data connection: (a) timestamp of start; (b) 5-tuple of the connections (e.g., source IP address, source port, destination IP address, destination port, protocol being used); (c) Identified protocols; (d) upstream volume of traffic; (e) downstream volume of traffic; (f) upstream packet count; (g) downstream packet count. The data is periodically collected (e.g., at pre-defined time intervals) by a Data Collector unit 211 (e.g., via Cl interface), and is stored in a repository therein.

An Analyzer unit 212 performs analysis of the collected data: (a) Network activity profiling, performed periodically (e.g., at pre-defined time intervals), by clustering the collected data (e.g., via Cd interface) using a pre-defined clustering mechanism or clustering algorithm (e.g., by utilizing K-Means, or other suitable clustering method); and performing extraction of features from the data-set, per class of IoT devices, wherein a class pertains to a set of IoT devices that belongs to the same IoT service or type (e.g., type of “vending machine”, or type of “smoke detector”). (b) Each new data point for a particular IoT device is compared to the cluster(s) of the class for that device; or, the features or characteristics of traffic pertaining to a particular IoT device, is compared to the features or characteristics that characterize the cluster of IoT devices of that type. (c) Outliers are detected and flagged as suspicious, for example, based on distance greater than a pre-defined threshold value, or based on other indicators for irregularity of values or ranges-of-values; and a notification is generated with regard to such flagged IoT device, e.g., for further manual and/or automatic handling, for initiating attack mitigation operations, for remote de-activation or remote pausing of the IoT device, or the like.

The flagged IoT devices or suspicious candidates are excluded from cluster K-Mean calculations; and are placed into a “deep observation mode” by instructing the Sensor Unit 221 (e.g., via In interface) to further monitor their network activity (e.g., optionally at shorter time-intervals or at a higher granularity or resolution). The deep observation mode may further include steering of HTTP traffic to inspection engines for Bot detection or infiltration; and/or detection of scanning attempts from the suspected IoT devices towards other internal hosts on the network or in the system.

The monitored network activity, and/or any output of the above operations, are for example: (a) Periodically collected by the Data Collector 211 (e.g., via Cl interface); and/or (b) Periodically analyzed by the Analyzer 212 (e.g., via Cd interface); and/or (c) Candidate IoT devices that exhibit malicious or defective or abnormal behavior are reported to a Policy component 213 (e.g., via Ac interface), and are placed into a quarantine, subject to configurable or pre-defined policy that is enforced by a Policy Enforcer component 222 (e.g., via En interface).

The following is a demonstrative example of detecting and/or mitigating a Distributed Denial-of-Service (DDoS) attack against a group of IP-connected cameras (or sensors, or devices) or other Internet-connected sensors or cameras or devices.

For example, 50,000 traffic cameras of a particular vendor (V) are deployed across a geographical area or a city or a state. Each camera has a cellular modem, and is connected to the Internet via a particular service provider (CSP-1). The cameras send video streams over the cellular connection to a particular content server residing on the Internet, allowing citizens to view traffic conditions in busy streets, intersection, highways, or the like.

Those IP-connected cameras are IoT devices, that hackers or attackers may attempt to compromise and/or exploit. For example, hackers wish to attack the public servers of “foobar-news.com” by a DDoS attack; they need a large set of “bots” or compromised devices, each device generating “legitimate” traffic against or towards the victim server(s) (e.g., “foobar-news.com”) in a coordinated manner, while also maintaining the anonymity of the hackers.

The hackers scan the Internet for hosts or devices to infect, subvert and use as “bots” for the DDoS attack. They are familiar with vendor V's cameras, and know how to detect them and penetrate or compromise them (e.g., by abusing a known/un-patched vulnerability). They conduct a “slow scan”, scanning the Internet from a central server to detect such vulnerable IP-connected cameras.

The hackers detect at least one camera in CSP-1's network. They exploit a known vulnerability in that vendor V camera, to obtain shell access with root privileges on that camera. The hackers transfer or install into the compromised camera a software module (malware) that allows them to control the camera remotely, and instruct the module to conduct scans as well as DDoS attacks. The malware module contacts the hackers' Command & Control (C&C) server. The hackers remotely instruct the infiltrated (compromised) camera to conduct additional scans, starting with the CSP-1 network; additional cameras are detected and infiltrated in the same manner; each infiltrated camera contacts the C&C server and registers for its use; the infiltrated cameras continue to conduct further scanning, and so forth. Subsequently, all or most or a large number of the IP cameras are infected and are in contact with the hackers' C&C server. On a given date and time, the attackers use the C&C server to instruct all infiltrated cameras to issue numerous and/or rapid and/or frequent HTTP requests versus or against or towards the server(s) of “foobar-news.com” at the same time, thus taking it down via a DDoS attack.

The system of the present invention may detect, prevent and/or mitigate such DDoS attack. For example, the system of the present invention monitors and observes traffic patterns of the 50,000 cameras, and automatically clusters them. While the cameras are in a “clean” state (non-infected, non-compromised), most of them will follow the same traffic pattern (e.g., transmitting video streams to the content server; occasionally having communication with the management server of the IoT service for status and for software updates). However, after the initial infection of one camera or of some cameras, the ongoing and dynamic traffic pattern clustering would show a change in the cluster, as more and more cameras are infected, conduct scanning, and are in touch with the C&C server. At some point in time, a significant (e.g., greater than N percent) of the cameras in the network would exhibit the changed pattern, or the irregular or abnormal traffic pattern (or various, multiple, irregular patterns or abnormal patterns) that is different from the regular pattern that was previously exhibited by non-infected cameras and/or by properly-functioning cameras. The system may search for these changes (changes in patterns/clustering) as they occur over time, and may flag the “growing shift” in pattern as an infection indication or as an indication that some or all IoT devices are compromised and/or are exhibiting irregular activity.

The discussion above was demonstrated in the context of a detecting IP-cameras that are infected by malware and/or that are compromised towards (or within) a DDoS attack. However, the present invention may similarly operate to detect, prevent and/or mitigate other irregular or abnormal or non-desired situations or conditions; for example, Vendor V has released a software update that is installed on thousands of IP-connected cameras, but also causes them to erroneously transmit large or larger amounts of data packets; the system of the present invention may detect such “patched” or “updated” cameras and may flag them as having abnormal activity, even if the reason for the irregular network activity was a legitimate (vendor supplied) yet defective patch, rather than an attacker's malware module.

In another example, due to “bug” (programming error) in the software or firmware of the cameras, thousands of cameras—that are neither compromised nor patched—suddenly begin to behave abnormally at a certain date-and-time, such as due to a stack overflow bug or due to a counter that breaches its pre-defined limits (e.g., similar to a Y2K bug); and the system of the present invention may detect and report such abnormal network activity that causes the multitude of cameras to behave in a defective or abnormal manner.

The present invention may operate by comparing a host (e.g., an IoT device) to other hosts (e.g., to other IoT devices) in its group or in its cluster of IoT devices (rather than merely comparing to a previous “baseline” profile of that device by itself) or having the same device-type. Infection or compromise or attack are detected as a function of mass behavior of numerous IoT devices, and not merely based on the particular change in pattern behavior of a particular host (IoT device), but based on the aggregated change exhibited by a group of hosts (IoT devise) that increases over time as the attackers infect more and more IoT devices. The present invention operates to perform the above features, utilizing to unique characteristics of IoT devices, such as, a large population of uniform devices, with similar communication pattern that can be clustered and that can be utilized for detection of outliers from the cluster; and the ability of the system to observe these devices in mass, or in the aggregate; and to combine clustering/inference with information that the system obtains from interaction with the provider's control plane (e.g., the system knows from the CSP-1 control plane (e.g., by IMSI, IP Range, etc.) that all those 50,000 subscribers are actually IoT devices (e.g., and not end-user cellular phones), and so they can be subjected to the above detection method).

For demonstrative purposes, some portions of the discussion herein may relate to an Internet-connected camera; however, other suitable IoT devices may be monitored and may be secured in accordance with the present invention, for example, various types of sensors, vending machines, alarm systems, detectors, smoke detectors, fire detectors, CO detectors, hazard detectors, or the like.

For demonstrative purposes, some portions of the discussion herein may relate to utilization of the system for the purpose of detecting a security breach of IoT device(s), or for detecting a DDoS attack that is being prepared or executed; however, the present invention may be used to achieve other and/or additional goals or results or benefits, for example, to detect other types of security breaches or attacks, to detect a malfunctioning or a non-functioning IoT device, or the like.

Reference is made to FIG. 3, which is a schematic block-diagram illustration of a Traffic Sensing and Enforcement (TSE) unit 300, in accordance with some demonstrative embodiments of the present invention. TSE unit 300 may be a demonstrative implementation of any of the TSE unit(s) that are discussed or described above. TSE unit 300 may be part of system 100 of FIG. 1, or may be a demonstrative implementation of TSE unit 106 of FIG. 1, or may be connected at other suitable location(s) within system 100 of FIG. 1. TSE unit 300 may be a demonstrative implementation of sub-system 200 of FIG. 2. In some embodiments, TSE unit 300 may optionally comprise one or more units or components or modules which are not necessarily depicted in FIG. 3 and which may be depicted in FIG. 1 and/or in FIG. 2, and/or other suitable components or modules that were discussed above or that are describe herein.

For example, as depicted in FIG. 3, the TSE unit 300 may comprise one or more of the components and/or modules of sub-system 200 of FIG. 2; such as, Data Collector unit 211; Analyzer unit 212; Policy component 213; Controller 210; Sensor 221; Enforcer 222; Subscriber Mapping unit 230 (or, an interface or connection to receive data from such subscriber mapping unit, or to send queries to such subscriber mapping unit).

TSE unit 300 may further comprise a network traffic listening and monitoring unit 301, to monitor (a) data traffic and (b) operations-and-management traffic and (c) control messages, that originate from an Internet of Things (IoT) device and are then exchanged between (i) a core network of a Cellular Service Provider (CSP), and (ii) the public Internet. The network traffic listening and monitoring unit 301 may optionally comprise (e.g., as sub-units or modules), or may be associated with, a Data Traffic monitoring module 302 to monitor data traffic; an Operations-and-Management Traffic Monitoring Module 303 to monitor operations-and-management traffic; and a Signaling and Control Messages Monitoring Module 304 to monitor signaling and/or to monitor control messages.

A Data Identifier Unit 305 may operate to identify within the monitored traffic and messages, based on cellular subscriber mapping information, particular network traffic that is exchanged between (a) Internet of Things (IoT) devices of a particular type, and (b) a recipient selected from the group consisting of: an IoT operations-and-management server, a server on the public Internet, a network element of said core network.

An Analyzer and Clustering Unit 306 may analyze said particular network traffic, and may characterize a cluster that represents a regular pattern of network traffic of said IoT devices of said particular type.

An Outlier Detector unit 307 may detect that a particular IoT device exhibits network traffic characteristics that are dissimilar relative to said cluster of regular pattern of network traffic of said particular type of IoT devices.

A Notifications Generator unit 308 may generate a notification or alarm or alert, that said particular IoT device is malfunctioning or is compromised, based on said dissimilar network traffic characteristics that are exhibited by said particular IoT device.

In some embodiments, the analyzer and clustering unit may comprise or may utilize a Clustering Module 309 (e.g., also referred herein for demonstrative purposes as K-means Clustering Module 309), which performs K-means clustering (or other type of clustering) of data-points representing network activity of each one of said IoT devices that belong to said particular type of IoT device. In some embodiments, these operations may optionally be performed by a Network Activity Clustering Module 310.

In some embodiments, the analyzer and clustering unit may comprise or may utilize a K-means Clustering Module 309, which may perform K-means clustering (or other type of clustering) of data-points representing upstream volume of traffic transmitted upstream by each one of said IoT devices that belong to said particular type of IoT device; such that the outlier detector detects that a particular IoT device exhibits upstream volume of traffic that is dissimilar relative to said cluster representing upstream volume of traffic of said particular type of IoT devices. In some embodiments, these operations may optionally be performed by an Upstream Abnormality Detector module 311.

In some embodiments, the analyzer and clustering unit may comprise or may utilize a K-means Clustering Module 309, which performs K-means clustering (or other type of clustering) of data-points representing downstream volume of traffic transmitted downstream towards each one of said IoT devices that belong to said particular type of IoT device; such that the outlier detector detects that a particular IoT device exhibits downstream volume of traffic that is dissimilar relative to said cluster representing upstream volume of traffic of said particular type of IoT devices. In some embodiments, these operations may optionally be performed by a Downstream Abnormality Detector module 315.

In some embodiments, the analyzer and clustering unit may comprise or may utilize a K-means Clustering Module 309, which performs K-means clustering (or other type of clustering) of data-points representing communication protocols that are utilized by each one of said IoT devices that belong to said particular type of IoT device; such that the outlier detector detects that a particular IoT device utilizes one or more communication protocols that are dissimilar relative to said cluster representing communication protocols that are used by said particular type of IoT devices. In some embodiments, these operations may optionally be performed by a Communication Protocols Abnormality Detector module 312.

In some embodiments, the analyzer and clustering unit may comprise or may utilize a K-means Clustering Module 309, which performs K-means clustering (or other type of clustering) of data-points representing time-length of upstream data transmissions by each one of said IoT devices that belong to said particular type of IoT device; such that the outlier detector detects that a particular IoT device exhibits time-lengths of upstream data transmissions that are dissimilar relative to said cluster representing time-length of upstream data transmissions by each one of said IoT devices of said particular type of IoT devices. In some embodiments, these operations may optionally be performed by an Upstream Time-Length Abnormality Detector module 313.

In some embodiments, the analyzer and clustering unit may comprise or may utilize a K-means Clustering Module 309, which performs K-means clustering (or other type of clustering) of data-points representing time-length of downstream data receptions towards each one of said IoT devices that belong to said particular type of IoT device; such that the outlier detector detects that a particular IoT device exhibits time-lengths of downstream data receptions that are dissimilar relative to said cluster representing time-length of downstream data transmissions towards each one of said IoT devices of said particular type of IoT devices. In some embodiments, these operations may optionally be performed by a Downstream Time-Length Abnormality Detector module 314.

In some embodiments, the analyzer and clustering unit may comprise or may utilize a K-means Clustering Module 309, which performs K-means clustering (or other type of clustering) of data-points representing commencement time-stamps of upstream data transmissions by each one of said IoT devices that belong to said particular type of IoT device; such that the outlier detector detects that a particular IoT device exhibits commencement time-stamps of upstream data transmissions that are dissimilar relative to said cluster representing commencement time-stamps of upstream data transmissions by each one of said IoT devices of said particular type of IoT devices. In some embodiments, these operations may optionally be performed by an Upstream Commencement Timestamps Abnormality Detector module 316.

In some embodiments, the analyzer and clustering unit further takes into account monitored traffic that is exchanged between (i) a Radio Access Network (RAN) and (ii) said core network of said CSP; for example, obtained or received or monitored or tracked via a RAN to Core Monitoring Module 317, or other suitable module or interface.

In some embodiments, an Internet Protocol (IP) destination address abnormality detector 321 may operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicate only with a single particular IP destination address, (iii) to determine that said particular IoT device communicates with another IP destination address, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, the Internet Protocol (IP) destination address abnormality detector 321 may operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicates only with a pre-defined set of particular IP destination addresses, (iii) to determine that said particular IoT device communicates with another IP destination address that is not in said pre-defined set of particular IP destination addresses, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, a Data Volume Abnormality Detector 322 may operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicate by sending a particular data volume per time-unit, (iii) to determine that said particular IoT device communicates by sending another data volume per time-unit, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, a Communication Frequency Abnormality Detector 323 may operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicates with remote destinations up to N times per time-unit, wherein N is a positive number; (iii) to determine that said particular IoT device communicates with remote destinations more than N times per time-unit, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, a Communication Duration Abnormality Detector 324 may operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicates with remote destinations by communication sessions that have time-length of up to M time-units, wherein M is a positive number; (iii) to determine that said particular IoT device communicates with a remote destination by at least one communication session that has time-length greater than M time-units, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, the communication protocols abnormality detector 312 ma operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicates with remote destinations by utilizing a first particular communication protocol, (iii) to determine that said particular IoT device communicates with a remote destination by at least one communication session that utilizes a communication protocol that is different from said first particular communication protocol, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, a Communication Time-Window Abnormality Detector 325 may operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicates with remote destinations only at a particular time-window of a day, (iii) to determine that said particular IoT device communicates with a remote destination at a time-point that is outside of said particular time-window, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, an Excessive Communications Detector may operate (i) to determine that a particular IoT device belongs to a particular type of IoT devices, (ii) to determine that said particular type of IoT devices typically communicates with one or more remote destinations up to P times per day, wherein P is a positive number; (iii) to determine that said particular IoT device communicates with one or more remote destinations more than P times per day, and (iv) to determine that said IoT device is malfunctioning or compromised.

In some embodiments, an Enforcement and Quarantine Unit 330, upon detection that said particular IoT device is malfunctioning or compromised, activates or operates a Full IoT Device Isolation Module 331 (i) to block relaying of all traffic that is outgoing from said particular IoT device to all destinations, and also (ii) to block relaying of all traffic that is incoming to said particular IoT device from all senders.

In some embodiments, for example, an enforcement and quarantine unit 330 determines that a smoke detector, that typically communicates only at 3:00 AM for up to 20 seconds by sending a fixed-size message of 640 bytes to a destination IP address that corresponds to “Smoke-Detectors-Company.com”, exhibits abnormal behavior, such as, it sends every four hours a varying-size message of between 47 kilobytes to 58 kilobytes to a destination IP address that corresponds to “Hackerz-Unite-Server.com”. Accordingly, the enforcement and quarantine unit 330 may put “Smoke-Detectors-Company.com” and/or its corresponding IP address(es) into a whitelist of destinations and senders that the smoke detector is authorized to communicate with. Similarly, the enforcement and quarantine unit 330 may put “Hackerz-Unite-Server.com” and/or its corresponding IP address(es) into a blacklist of destinations and senders that the smoke detector is unauthorized to communicate with. Then, full blocking, or partial blocking or selective blocking, of traffic to or from the compromised or malfunctioning IoT device, is applied based on such whitelist and/or blacklist; such as, by discarding or blocking or dropping or non-delivering or stopping (or erasing in transit) packets or messages or signals that are directed from the IoT device to a destination on the blacklist, or that are directed from a sender on the blacklist towards the IoT device; and/or by allowing passage and/or relaying and/or forwarding and/or delivering packets or messages or signals that are directed from the IoT device to a destination on the whitelist, or that are directed from a sender on the whitelist towards the IoT device.

In some embodiments, the enforcement and quarantine unit 330, upon detection that said particular IoT device is malfunctioning or compromised, activates or operates a Blacklist-Based Selective Isolation Module 332 (i) to define a blacklist of network destinations and network senders that said particular IoT device is not authorized to communicate with, and (ii) to selectively block relaying of all traffic that is outgoing from said particular IoT device to one or more particular destinations that are in said blacklist, and also (iii) to selectively block relaying of all traffic that is incoming to said particular IoT device from one or more particular senders that are in said blacklist.

In some embodiments, the enforcement and quarantine unit 330, upon detection that said particular IoT device is malfunctioning or compromised, activates or operates a Whitelist-Based Selective Isolation Module 333 (i) to define a whitelist of network destinations and network senders that only with them said particular IoT device is authorized to communicate, and (ii) to selectively block relaying of all traffic that is outgoing from said particular IoT device to one or more particular destinations that are not in said whitelist, and also (iii) to selectively block relaying of all traffic that is incoming to said particular IoT device from one or more particular senders that are not in said whitelist.

It is noted that the above modules, such as the Blacklist-Based Selective Isolation Module 332 and/or Whitelist-Based Selective Isolation Module 333, are non-limiting examples; and other suitable selective quarantine modules or selective isolation modules or selective traffic-filtering modules may be used, optionally as part of a Selective Traffic-Filtering Module 335 or other suitable unit or component.

TSE unit 300 may further comprise, optionally, a Traffic Profiling Module 340 able to perform the traffic profiling operations that were described above; and may operate in conjunction with, and may update information in, a IoT Devices Behavioral Profiles Database 341 which stores behavioral profiles indicating characteristic of the network activity that is typical and/or is common and/or is authorized for a particular type of IoT devices (e.g., smoke detector; vending machine; electricity meter). Optionally, in the traffic profiling process, an IoT Device Traffic Profile Constructor Unit 342 may dynamically construct a network activity behavior profile for each IoT device that is monitored; such profiles are then compared or matched, via a Matching/Comparing Module 343 to the IoT Devices Behavioral Profiles Database 341, in order to determine whether a particular IoT device, based on the sensed characteristics of its network activity, matches the behavioral profile of network activity of IoT devices of this type, or exhibits abnormal network activity and is thus suspected to be compromised or malfunctioning.

Optionally, an IoT Device Type Classifier 345 may operate in conjunction with one or more of the above-mentioned modules or units, for example, to classify a particular IoT device into a Type of IoT devices (e.g., smoke detectors; vending machines; electricity meters) based on a match between (i) the exhibited network activity of that particular IoT device and (ii) the typical network activity of IoT devices of this type as reflected in their behavioral profile. The classification may further be used, subsequently, in order to determine whether a newly-sensed or newly-captured network activity or network behavior, is within the typical or common or allowed network activity behaviors for that Type of IoT devices, thereby determining that the IoT device does not appear to be compromised or malfunctioning; or conversely, to determine whether a newly-sensed or newly-captured network activity or network behavior, is not within the typical or common or allowed network activity behaviors for that Type of IoT devices, thereby determining that the IoT device appears to be compromised or malfunctioning.

In some embodiments, optionally, the Analyzer and Clustering Unit 306 (or other analysis/clustering modules as described), may operate based on, or by taking into account, TCP/IP packets, PDP packets, post PGW traffic, pre PGW traffic, post SGW traffic, pre SGW traffic, pre eNodeB traffic, post eNodeB traffic, RAN traffic, Core Network traffic or packets, RAN to Core Network traffic or signaling or messages; headers, payloads, signals of communication items; as well as signaling and/or control messages exchanged by or received by or sent by any of the above. In some embodiments, optionally, the Analyzer and Clustering Unit 306 (or other analysis/clustering modules as described), may operate based on, or by taking into account, PGW output, PGW input, PGW relayed, SGW output, SGW input, RAN output, RAN input, Core Network output, Core Network input, eNodeB input, eNodeB output; as well as signaling and/or control messages exchanged by or received by or sent by any of the above.

In some embodiments of the present invention, a system comprises: a network traffic monitoring unit 301, to monitor at least one of: (a) data traffic, (b) operations-and-management traffic, (c) control messages, that relate to cellular communication between (I) an Internet of Things (IoT) device and (II) a core network of a Cellular Service Provider (CSP); an IoT grouping unit 326, to group multiple IoT devices into a particular IoT group, based on at least one of: (A) pre-defined data that indicates that said multiple IoT devices belong to a same entity (e.g., to a same owner entity); (B) pre-defined data that indicates that said multiple IoT devices are operated by a same entity (e.g., to a same operator entity; wherein operator in this context is not necessarily a Cellular Network Operator, but rather, is an entity that operates a specific group of IoT devices on behalf of a particular customer or client, such as, for example, a security firm that operates a set of IP cameras or IP sensors on behalf of a client or a customer)); (C) dynamically generated data that indicates that said multiple devices exhibit same communication pattern over a particular time-period; a baseline behavior determination unit 327, to determine a Regular Baseline Cellular Communication Behavior (RBCCB) profile that characterizes the cellular communications that are outgoing from and incoming to each member of said particular IoT group; an outlier detector 307, to subsequently detect that a particular IoT device of said particular IoT group, exhibits cellular traffic characteristics that are abnormal relative to the RBCCB profile that was characterized for said particular IoT group; an enforcement actions generator 328, to perform or to generate or to trigger or to initiate one or more enforcement operations or response actions with regard to said particular IoT device which exhibits cellular traffic characteristics that are abnormal relative to the RBCCB profile that was characterized for said particular IoT group.

In some embodiments, the network traffic monitoring unit is to monitor: (a) data traffic, and also, at least one of: (b) operations-and-management traffic, and (c) control messages, that relate to cellular communication between (I) said Internet of Things (IoT) device and (II) the core network of the Cellular Service Provider (CSP).

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on a list of International Mobile Subscriber Identity (IMSI) strings that is obtained or received from an owner or operator of said multiple IoT devices. For example, an owner or operator of a group of 150 smoke detectors, provides a list of IMSI strings of these particular devices; which are then grouped into one IoT group based on their IMSI strings belonging to this list.

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on a list of one or more Mobile Station International Subscriber Director Number (MSISDN) strings and/or International Mobile Equipment Identity (IMEI) strings, that is obtained or received from an owner or operator of said multiple IoT devices. For example, an owner or operator of a group of 150 smoke detectors, provides a list of MSISDN and/or IMEI strings of these particular devices; which are then grouped into one IoT group based on their MSISDN or IMEI strings belonging to this list.

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on at least one list out of: (i) list of device provisioning data, (ii) list of device serialization data, that is obtained or received from an owner or operator of said multiple IoT devices.

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on at least detection of a same user-agent string in HTTP requests sent by each one of said multiple IoT devices.

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on at least detection that each one of said IoT devices, sends exactly M bytes of data every T hours, and receives exactly N bytes of data every T hours; wherein M, N and T are pre-defined threshold values. The IoT grouping unit may utilize, for this purpose and for other purposes described herein, one or more units or modules that measure or count bytes or packets or data-items that are sent by and/or received from an IoT device, in conjunction with a timer or a timing unit that monitors the passage of time, thereby enabling determination of the number or size of transmissions/receptions in a specific time-period or time-slot or time-window by each such IoT device.

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on at least detection that each one of said IoT devices: (I) sends every T hours cellular data having total volume in the range of between M1 to M2 bytes; and (II) receives every T hours cellular data having total volume in the range of between N1 to N2 bytes; wherein M1, M2, N1, N2 and T are pre-defined threshold values.

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on at least detection that each one of said IoT devices sends outgoing cellular data only to a same single particular destination (e.g., to the same single destination of RemoteServer.ExampleDomain.com), not more than one time every T minutes; wherein T is a pre-defined threshold value; or, to a same batch of similar or generally-similar or sufficiently-similar destinations or external entities (e.g., some IoT devices send data to RemoteServer.ExampleDomain.com, whereas some other IoT devices send data to DataCollector.ExampleDomain.com, and some other IoT devices send data to DataReceiver.ExampleDomain.com; or the like, indicating similarity of the recipient destinations due to having the same domain name, and thereby enabling the IoT grouping unit to group them together even if they do not send data to the same exact destination but rather to sufficiently-similar destinations, wherein the sufficient similarity is determined based on pre-defined criteria or conditions as demonstrated above with regard to having the same Domain name in all such similar destinations).

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on at least detection that each one of said IoT devices receives incoming cellular data only from a same or similar single remote entity (or, from a set or batch of sufficiently-similar or otherwise correlated remote entities, as demonstrated above), not more than one time every T minutes; wherein T is a pre-defined threshold value.

In some embodiments, the IoT grouping unit is to group said multiple IoT devices into said particular IoT group, based on at least detection of a particular repeating pattern of outgoing and incoming cellular communication operations that each one of said IoT devices performs repeatedly over a pre-defined time period. This may optionally be performed by a pattern detector module or unit, which may be part of the IoT grouping unit or may operate in conjunction therewith, and which may detect or determine that a particular or sufficiently-similar pattern exists with regard to incoming and/or outgoing communications of two or more IoT devices.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile of said particular IoT group, by performing analysis of both (i) cellular traffic data of each one of said multiple IoT devices, and (ii) meta-data about cellular communications of each one of said multiple IoT devices.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile of said particular IoT group, by performing analysis of both (i) cellular traffic data of each one of said multiple IoT devices, and (ii) meta-data about cellular communications of each one of said multiple IoT devices; wherein said analysis determines: (A) a maximum volume of outgoing cellular traffic that is outgoing from a member of said particular IoT group within a pre-defined time-period; and (B) a minimum volume of outgoing cellular traffic that is outgoing from a member of said particular IoT group within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile of said particular IoT group, by performing analysis of both (i) cellular traffic data of each one of said multiple IoT devices, and (ii) meta-data about cellular communications of each one of said multiple IoT devices; wherein said analysis determines: (A) a maximum volume of incoming cellular traffic that is incoming to a member of said particular IoT group within a pre-defined time-period; and (B) a minimum volume of incoming cellular traffic that is incoming to a member of said particular IoT group within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile of said particular IoT group, which indicates at least: (a) a maximum total volume of outgoing cellular traffic that a member of said particular IoT group is allowed to send within a pre-defined time period; and (b) a maximum number of outgoing cellular transmissions that a member of said particular IoT group is allowed to send within a pre-defined time period.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile of said particular IoT group, based on an obtained list of cellular communications threshold values and threshold ranges that a member of said particular IoT group is allowed to perform within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to update said RBCCB profile of said particular IoT group, based on an indication or an identification that members of said particular IoT group received a firmware update or a security patch. This may enable the system to later reduce or eliminate a “false positive” decision with regard to IoT devices that received such update or patch, which legitimately caused them to modify their communications pattern (e.g., due to the update or upgrade or patch, each IoT device now legitimately sends 326 bytes every hour, instead of previously sending only 241 bytes every three hours).

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of data-points representing the number of outgoing cellular transmissions that are transmitted by each one of said multiple IoT devices within a pre-defined time-period. The clustering described above or herein, may be based on K-means clustering, and/or on other suitable types of clustering methods; and may be based on a single type of data-points or on multiple types of data-points (e.g., multiple features) that are evaluated together for clustering purposes.

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of data-points representing the number of incoming cellular receptions that are received by each one of said multiple IoT devices within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of data-points representing the total upstream volume of outgoing cellular transmissions that are transmitted by each one of said multiple IoT devices within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of data-points representing the total downstream volume of incoming cellular receptions that are received by each one of said multiple IoT devices within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of data-points representing the time-length of upstream cellular transmissions that are transmitted by each one of said multiple IoT devices within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of data-points representing the time-length of downstream cellular receptions that are received by each one of said multiple IoT devices within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of data-points representing particular types of communication protocols that are utilized for upstream cellular transmissions by each one of said multiple IoT devices within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to determine said RBCCB based at least on clustering of Deep Packet Inspection (DPI) data-points representing particular types of applications generate upstream cellular transmissions by each one of said multiple IoT devices within a pre-defined time-period.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that all members of said particular IoT group send upstream cellular transmissions only to a single particular Internet Protocol (IP) destination address; wherein the outlier detector comprises an Internet Protocol (IP) destination address abnormality detector, (i) to determine that said particular IoT device sends one or more upstream cellular transmissions to another IP destination address, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that all members of said particular IoT group receive downstream cellular transmissions only from a single particular Internet Protocol (IP) originating address; wherein the outlier detector comprises an Internet Protocol (IP) originating address abnormality detector, (i) to determine that said particular IoT device receives one or more downstream cellular communications from another IP destination address, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that all members of said particular IoT group send upstream cellular transmissions only to a particular set of Internet Protocol (IP) destination addresses; wherein the outlier detector comprises an Internet Protocol (IP) destination address abnormality detector, (i) to determine that said particular IoT device sends one or more upstream cellular transmissions to another IP destination address which is not in said particular set of IP destination addresses, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that all members of said particular IoT group receive downstream cellular transmissions only from a particular set of Internet Protocol (IP) originating addresses; wherein the outlier detector comprises an Internet Protocol (IP) originating address abnormality detector, (i) to determine that said particular IoT device receives one or more downstream cellular communications from another IP destination address that is not in said particular set of IP originating addresses, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each upstream cellular transmission, that is typically performed by each member of said particular IoT group, has a total length of between M1 to M2 bytes, wherein M1 and M2 are pre-defined threshold values; wherein the outlier detector comprises a data volume abnormality detector, (i) to determine that said particular IoT device sends at least one upstream cellular transmission that has a total length which is not between M1 to M2 bytes, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each downstream cellular transmission, that is typically received by each member of said particular IoT group, has a total length of between M1 to M2 bytes, wherein M1 and M2 are pre-defined threshold values; wherein the outlier detector comprises a data volume abnormality detector, (i) to determine that said particular IoT device receives at least one downstream cellular transmission that has a total length which is not between M1 to M2 bytes, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each member of said particular IoT group, sends out between N1 and N2 discrete cellular transmissions within a time-period of T hours, wherein N1 and N2 and T are pre-defined threshold values; wherein the outlier detector comprises a communication frequency abnormality detector, (i) to determine that said particular IoT device sends out D discrete cellular transmissions within T hours, wherein D is not between N1 to N2 bytes, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each member of said particular IoT group, establishes between N1 and N2 core network connection requests per T hours, wherein N1 and N2 and T are pre-defined threshold values; wherein the outlier detector comprises a communication frequency abnormality detector, (i) to determine that said particular IoT device establishes R core network connection requests per T hours, wherein D is not between N1 to N2, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each upstream cellular transmission, that is typically performed by each member of said particular IoT group, has a total time-duration of between M1 to M2 seconds, wherein M1 and M2 are pre-defined threshold values; wherein the outlier detector comprises a time-duration abnormality detector, (i) to determine that said particular IoT device sends at least one upstream cellular transmission that has a total time-duration which is not between M1 to M2 seconds, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each upstream cellular transmission, that is typically performed by each member of said particular IoT group, is performed using a particular communication protocol; wherein the outlier detector comprises a communication protocol abnormality detector, (i) to determine that said particular IoT device sends at least one upstream cellular transmission using another communication protocol, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each upstream cellular transmission, that is typically performed by each member of said particular IoT group, is performed by a particular application running on each member of said particular IoT group; wherein the outlier detector comprises an application abnormality detector, (i) to determine that said particular IoT device sends at least one upstream cellular transmission via another application running on said particular IoT device, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each upstream cellular transmission, that is typically performed by each member of said particular IoT group, is performed by a particular application running on each member of said particular IoT group; wherein the outlier detector comprises an application abnormality detector, (i) to determine based on Deep Packet Inspection (DPI) analysis that said particular IoT device sends at least one upstream cellular transmission via another application running on said particular IoT device, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each upstream cellular transmission, that is typically performed by each member of said particular IoT group, is performed within a particular time-window; wherein the outlier detector comprises a communication time-window abnormality detector, (i) to determine that said particular IoT device sends at least one upstream cellular transmission during a time-slot that is outside of said particular time-window, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile which indicates that each member of said particular IoT group, performs up to N upstream cellular transmissions per day; wherein the outlier detector comprises an excessive communications detector, (i) to determine that said particular IoT device performs more than N upstream cellular transmissions per day, and (ii) to determine that said particular IoT device is malfunctioning or compromised.

In some embodiments, the baseline behavior determination unit is to generate said RBCCB profile based on a previously-obtained or previously-prepared database which stores data indicating baseline cellular communication rules that pertain to different types of IoT devices.

In some embodiments, the baseline behavior determination unit is to dynamically update said RBCCB profile of said particular IoT group, based on continued Machine Learning (ML) of traffic-related behavior of members of said particular IoT group.

In some embodiments, the outlier detector is: (i) to detect that said particular IoT device exhibits cellular communication activity that is sufficiently dissimilar, beyond a pre-defined threshold of dissimilarity, from said RBCCB profile of said particular IoT group, and (ii) to trigger said enforcement actions generator to perform one or more enforcement operations with regard to said particular IoT device.

In some embodiments, the outlier detector is: (i) to detect that said particular IoT device exhibits cellular communication activity that is sufficiently dissimilar, beyond a pre-defined threshold of dissimilarity, from said RBCCB profile of said particular IoT group, and (ii) to detect that there exists an authorized cause for said cellular communication activity, and (iii) to determine that said cellular communication activity is a false positive, and to avoid triggering of said enforcement actions generator.

In some embodiments, the enforcement actions generator is to send a notification, to an owner or an operator of said particular IoT group, indicating (i) an identifier of said particular IoT device, and (ii) an indication that said particular IoT device is malfunctioning or compromised.

In some embodiments, the enforcement actions generator is to quarantine all cellular traffic that is sent from said particular IoT device.

In some embodiments, the enforcement actions generator is to quarantine all cellular traffic that is directed to said particular IoT device.

In some embodiments, the enforcement actions generator is to quarantine all cellular traffic that is directed to said particular IoT device, except for cellular traffic that originates from a genuine owner of said IoT device (e.g., as pre-defined in the system, for example, based on a list that indicates identifiers of IoT devices and their respective legitimate owner or genuine owner).

In some embodiments, upon detection that said particular IoT device is malfunctioning or compromised, the enforcement actions generator activates a blacklist-based selective quarantine module (i) to define a blacklist of network destinations and network senders that said particular IoT device is not authorized to communicate with, and (ii) to selectively block relaying of all cellular traffic that is outgoing from said particular IoT device to one or more particular destinations that are in said blacklist, and also (iii) to selectively block relaying of all cellular traffic that is incoming to said particular IoT device from one or more particular senders that are in said blacklist.

In some embodiments, upon detection that said particular IoT device is malfunctioning or compromised, the enforcement actions generator activates a whitelist-based selective quarantine module (i) to define a whitelist of network destinations and network senders that only with them said particular IoT device is authorized to communicate, and (ii) to selectively block relaying of all cellular traffic that is outgoing from said particular IoT device to one or more particular destinations that are not in said whitelist, and also (iii) to selectively block relaying of all cellular traffic that is incoming to said particular IoT device from one or more particular senders that are not in said whitelist.

In accordance with embodiments of the present invention, calculations, operations and/or determinations may be performed locally within a single device, or may be performed by or across multiple devices, or may be performed partially locally and partially remotely (e.g., at a remote server) by optionally utilizing a communication channel to exchange raw data and/or processed data and/or processing results.

Although portions of the discussion herein relate, for demonstrative purposes, to wired links and/or wired communications, some embodiments are not limited in this regard, but rather, may utilize wired communication and/or wireless communication; may include one or more wired and/or wireless links; may utilize one or more components of wired communication and/or wireless communication; and/or may utilize one or more methods or protocols or standards of wireless communication.

Some embodiments may be implemented by using a special-purpose machine or a specific-purpose device that is not a generic computer, or by using a non-generic computer or a non-general computer or machine. Such system or device may utilize or may comprise one or more components or units or modules that are not part of a “generic computer” and that are not part of a “general purpose computer”, for example, cellular transceivers, cellular transmitter, cellular receiver, GPS unit, location-determining unit, accelerometer(s), gyroscope(s), device-orientation detectors or sensors, device-positioning detectors or sensors, or the like.

Some embodiments may be implemented as, or by utilizing, an automated method or automated process, or a machine-implemented method or process, or as a semi-automated or partially-automated method or process, or as a set of steps or operations which may be executed or performed by a computer or machine or system or other device.

Some embodiments may be implemented by using code or program code or machine-readable instructions or machine-readable code, which may be stored on a non-transitory storage medium or non-transitory storage article (e.g., a CD-ROM, a DVD-ROM, a physical memory unit, a physical storage unit), such that the program or code or instructions, when executed by a processor or a machine or a computer, cause such processor or machine or computer to perform a method or process as described herein. Such code or instructions may be or may comprise, for example, one or more of: software, a software module, an application, a program, a subroutine, instructions, an instruction set, computing code, words, values, symbols, strings, variables, source code, compiled code, interpreted code, executable code, static code, dynamic code; including (but not limited to) code or instructions in high-level programming language, low-level programming language, object-oriented programming language, visual programming language, compiled programming language, interpreted programming language, C, C++, C#, Java, JavaScript, SQL, Ruby on Rails, Go, Cobol, Fortran, ActionScript, AJAX, XML, JSON, Lisp, Eiffel, Verilog, Hardware Description Language (HDL, BASIC, Visual BASIC, Matlab, Pascal, HTML, HTML5, CSS, Perl, Python, PHP, machine language, machine code, assembly language, or the like.

Discussions herein utilizing terms such as, for example, “processing”, “computing”, “calculating”, “determining”, “establishing”, “analyzing”, “checking”, “detecting”, “measuring”, or the like, may refer to operation(s) and/or process(es) of a processor, a computer, a computing platform, a computing system, or other electronic device or computing device, that may automatically and/or autonomously manipulate and/or transform data represented as physical (e.g., electronic) quantities within registers and/or accumulators and/or memory units and/or storage units into other data or that may perform other suitable operations.

The terms “plurality” and “a plurality”, as used herein, include, for example, “multiple” or “two or more”. For example, “a plurality of items” includes two or more items.

References to “one embodiment”, “an embodiment”, “demonstrative embodiment”, “various embodiments”, “some embodiments”, and/or similar terms, may indicate that the embodiment(s) so described may optionally include a particular feature, structure, or characteristic, but not every embodiment necessarily includes the particular feature, structure, or characteristic. Furthermore, repeated use of the phrase “in one embodiment” does not necessarily refer to the same embodiment, although it may. Similarly, repeated use of the phrase “in some embodiments” does not necessarily refer to the same set or group of embodiments, although it may.

As used herein, and unless otherwise specified, the utilization of ordinal adjectives such as “first”, “second”, “third”, “fourth”, and so forth, to describe an item or an object, merely indicates that different instances of such like items or objects are being referred to; and does not intend to imply as if the items or objects so described must be in a particular given sequence, either temporally, spatially, in ranking, or in any other ordering manner.

Some embodiments may be used in, or in conjunction with, various devices and systems, for example, a Personal Computer (PC), a desktop computer, a mobile computer, a laptop computer, a notebook computer, a tablet computer, a server computer, a handheld computer, a handheld device, a Personal Digital Assistant (PDA) device, a handheld PDA device, a tablet, an on-board device, an off-board device, a hybrid device, a vehicular device, a non-vehicular device, a mobile or portable device, a consumer device, a non-mobile or non-portable device, an appliance, a wireless communication station, a wireless communication device, a wireless Access Point (AP), a wired or wireless router or gateway or switch or hub, a wired or wireless modem, a video device, an audio device, an audio-video (A/V) device, a wired or wireless network, a wireless area network, a Wireless Video Area Network (WVAN), a Local Area Network (LAN), a Wireless LAN (WLAN), a Personal Area Network (PAN), a Wireless PAN (WPAN), or the like.

Some embodiments may be used in conjunction with one way and/or two-way radio communication systems, cellular radio-telephone communication systems, a mobile phone, a cellular telephone, a wireless telephone, a Personal Communication Systems (PCS) device, a PDA or handheld device which incorporates wireless communication capabilities, a mobile or portable Global Positioning System (GPS) device, a device which incorporates a GPS receiver or transceiver or chip, a device which incorporates an RFID element or chip, a Multiple Input Multiple Output (MIMO) transceiver or device, a Single Input Multiple Output (SIMO) transceiver or device, a Multiple Input Single Output (MISO) transceiver or device, a device having one or more internal antennas and/or external antennas, Digital Video Broadcast (DVB) devices or systems, multi-standard radio devices or systems, a wired or wireless handheld device, e.g., a Smartphone, a Wireless Application Protocol (WAP) device, or the like.

Some embodiments may comprise, or may be implemented by using, an “app” or application which may be downloaded or obtained from an “app store” or “applications store”, for free or for a fee, or which may be pre-installed on a computing device or electronic device, or which may be otherwise transported to and/or installed on such computing device or electronic device.

The present invention further comprises devices, systems, and methods for detection and/or isolation and/or prevention and/or mitigation of a “signaling storm” or a “signal storm” or a “signals storm”, or other types of cyber-attacks and/or distributed attacks that are performed over Control Plane (CP) and/or User Plane (UP), particularly of such signaling storms or cyber-attacks that are generated by IoT devices, and particularly of such signaling storm or cyber-attacks in 5G mobile networks.

The Applicants have realized that the rapid development of public communication networks, digital services, and widespread adoption of various types of “smart” devices or Internet-connected devices, cause new challenges and problems in the field of cyber security, and opens new attack vectors or attack surfaces that have not yet been adequately addressed.

The Applicants have realized that a significant demand for Internet-of-Things (IoT) devices, from different vendors and manufacturers and providers, together with the roll-out or deployment of 5G cellular networks that may be able to support very high density of IoT devices (e.g., up to one million IoT devices per square kilometer), may require Communication Service Provider (CSP) entities, as well as entities that own or operate such IoT devices, to be able to efficiently detect and discover (and mitigate) security risks and security “holes”, as well as infection of IoT devices (e.g., by malware, or otherwise being controlled or utilized by an attacker); and further require to detect or prevent or mitigate Distributed Denial of Service (DDoS or DDOS or D-DoS or Distributed DoS) attacks, particularly outbound or outgoing DDoS attacks that utilize numerous 5G-capable IoT devices.

The Applicants have realized that there is a need to detect, prevent and/or mitigate DDoS attacks, or signaling storms that derive from such DDoS attacks or from a malfunctioning batch of IoT devices (e.g., due to a defective or erroneous or “buggy” software update or firmware update that was installed into thousands of IoT devices); particularly in cellular/mobile 5G networks of various types, and in view of the growing number of connected IoT devices and their high density per geographical area, which makes such IoT devices a desirable goal for cyber attackers and criminals and which causes such IoT devices to become a risk factor for CSP entities and consumers alike.

The Applicants have further realized that conventional protection mechanisms may, at most, operate to protect the endpoint device itself (e.g., an anti-virus or anti-malware program that periodically scans the IoT device from within); whereas, the Radio Access Network and/or the Core Network do not yet enjoy effective protection from outbound attacks. The Applicants have realized that in 5G networks, an attack may excessively overload network elements or network nodes by instructing IoT devices to generate significant Control Traffic (and not necessarily by completing formation of a new connection, and/or not necessarily by transmitting excessive size of payload). The Applicants have also realized that unlike 4G networks, the ability of 5G networks to significantly leverage the capacity of the Air Interface (e.g., by hundreds of times), allows IoT devices to be able to overload the 5G network by generating Control Messages randomly or pseudo-randomly, at a lower generation ratio per IoT device; and conventional protection methods would not be effective.

Reference is made to FIG. 4, which is a schematic illustration of a demonstrative system 400 in which the detection and protection solutions of the present invention may be implemented.

System 400 comprises various IoT devices or “smart” devices or Internet-connected devices or IP-connected devices or 5G-capable devices; for example, showing for demonstrative purposes three suc 5G-connected devices 401-403. Each such 5G-connected device may be, for example, a smart home device or appliance or sensor (e.g., an Internet-connected security camera or smoke detector), an Internet-connected industrial or enterprise device or sensor (e.g., a factory machine or sensor that is Internet-connected, in order to send out reports and/or to receive remote commands), a smart car or vehicle (e.g., driven or operated by a human; or by a robot or machine; or by an autonomous driving unit or self-driving unit), a smart drone or flying device or unmanned aerial vehicle (UAV) (e.g., controlled or operated remotely by a human; or by a robot or machine; or by an autonomous flying unit), smartphones, tablets, smart-watches, gaming consoles, smart televisions, smart indoor or outdoor illumination units, smart agriculture equipment or construction equipment or other machinery, or the like.

Each such device 401-403 may comprise a wireless communication transceiver, such as a cellular 5G transceiver; and may communicate with a Core Network 410 (e.g., a cellular 5G core network) directly or via a Radio Access Network (RAN) 411; in order to communicate with, or send data and/or commands to, or receive data and/or commands from, one or more Remote Entities such as a Remote Data Receiver 421, a Remote Data Provider 422, an Over-The-Top (OTT) service provider 423, or the like.

In accordance with some demonstrative embodiments of the present invention, system 400 may further comprise: a Protector Unit 431; a User Plane (UP) Probe 432; a Control Plane (CP) Probe 433; an Inventory Management (IM) sub-system 434; and a Customer Relationship Management (CRM) sub-system 435.

The Protector Unit 431 is an active protection element, which operates to analyze monitored data and/or meta-data, to generate insights with regard to current and/or ongoing and/or predicted attacks or security risks, and to enforce or deploy a suitable security policy or attack-mitigation policy (e.g., selected from a pool or bank of various pre-defined policies). The Protector Unit 431 may receive data from the UP Probe 432 and/or from the CP Probe 433. The Protector Unit 431 may provide traffic-discarding rules or traffic-modification rules, to the UP Probe 432 and/or to the CP Probe 433, and those Probes then enforce or implement such rules on the traffic that passes through them.

The UP Probe 432 is an active in-line traffic-monitoring and traffic-enforcement element or unit, which analyzes the traffic in the User Plane, and selectively modifies and/or selectively discards packets in the User Plane according to policy rules or directives that are set by the Protector Unit 431. The UP Probe 432 may monitor, track, count and/or measure the number and/or the quantity and/or the frequency and/or other characteristics of one or more control messages and/or requests, for example, Domain Name Server (DNS) requests, TCP messages, Sequence Number (SYN) control message or SYN message or SYN request or SYN query or SYN packet, SYN acknowledgment or SYN-ACK or SYN response or SYN-ACK packet, FIN message or FIN control message or FIN packet (e.g., corresponding to the final byte and/or the final packet) or other FIN connection termination request, FIN-ACK or FIN acknowledgment or other FIN acknowledgment message or FIN acknowledgment control message that indicates connection termination acknowledgments, other ACK (acknowledgment) control messages, Selective ACK (SACK) messages that relate to particular packets or messages being acknowledged, or the like. The UP Probe 432 may count these messages, per type of message and/or in the aggregation of types, and may track their number or their quantity per time-unit (e.g., per minute) per IoT device from which they originate and/or per type-of-device from which they originate; and the system may then compare the monitored data to pre-defined threshold values or ranges-of-values, and/or may perform Machine Learning (ML) processes of such data, in order to determine that the number (the quantity) and/or the frequency of such monitored control messages is excessively high and/or irregular and/or abnormal and thus indicates that the IoT device is infected and/or compromised and/or malfunctioning.

The CP Probe 433 is an active in-line traffic-monitoring and traffic-enforcement element or unit, which analyzes the traffic in the Control Plane (CP), and selectively modifies and/or selectively discards packets in the Control Plane according to policy rules or directives that are set by the Protector Unit 431. The CP Probe 433 may monitor, track, count and/or measure the number and/or the quantity and/or the frequency and/or other characteristics of one or more control messages and/or requests, for example, RRC Connection Requests (e.g., control message that is utilized to request establishment of a Radio Resource Control (RRC) connection), Attach request or Attach control message, Create Session request or Create Session control message, or the like. The CP Probe 433 may count these messages, per type of message and/or in the aggregation of types, and may track their number or their quantity per time-unit (e.g., per minute) per IoT device from which they originate and/or per type-of-device from which they originate; and the system may then compare the monitored data to pre-defined threshold values or ranges-of-values, and/or may perform Machine Learning (ML) processes of such data, in order to determine that the number (the quantity) and/or the frequency of such monitored control messages is excessively high and/or irregular and/or abnormal and thus indicates that the IoT device is infected and/or compromised and/or malfunctioning.

The Applicants have realized that in some implementations, it may not be sufficient to count control messages per time-unit in order to effectively stop or mitigate a DDoS attack or a signaling storm or a “flood” cyber-attack, particularly in 5G networks which may support a significant number of connected IoT devices. For example, a pre-defined threshold value that is associated with a single IoT device may fail to indicate an attack, as the infected or compromised IoT device may repeatedly generate traffic which is below the threshold value, yet the cumulative traffic by thousands or tens-of-thousands of such IoT devices would be damaging to the network and would in fact constitute an effective DDoS attack. Therefore, in some implementations, the IoT devices and their communication patterns are monitored, tracked and analyzed in conjunction with other conditions or constraints, such as, time-of-day, day-of-week, date-of-month, type of device, or the like, and such data is correlated with the behavior of neighboring or similar IoT devices using ML analysis, to reach effective detection and mitigation of such signaling storm.

The Applicants have also realized that in some implementations, it may not be sufficient to monitor, track, count and/or otherwise analyze the data about control messages that pass through the User Plane (UP) alone, or that pass through the Control Plane (CP) alone; but rather, some implementations may effectively detect and isolate a signaling storm by monitoring, tracking, and analyzing both the control messages that pass through the Control Plane and the control messages that pass through the User Plane. For example, the Applicants have realized that a signaling storm attack may penetrate or adversely influence the 5G network over the Control Plane, by generating only control messages over the Control Plane without generating significant amount of traffic over the User Plane; or similarly, a signaling storm attack may penetrate or adversely influence the 5G network over the User Plane, by generating messages that appear to meet the standard or regular flow over the Control Plane; as such cyber-attacks may be configured based on the identity of the target that the attacker wishes to attack, such as, the Control Plane, the User Plane (the Data Plane), both the CP and the UP, or a target victim entity that is located outside the network. Accordingly, realized the Applicants, monitoring of both CP and UP traffic may enable improved and effective detection and mitigation of such cyber-attacks.

The IM sub-system 434 stores data that the Protector Unit 431 may fetch or obtain or query; for example, indicating to the Protector Unit 431 the type or group of an examined device or a monitored IoT device, based on its International Mobile Subscriber Identity (IMSI) number and/or based on other unique identifier of the IoT device whose traffic and/or whose communication behavior is being monitored, inspected and/or analyzed.

The CRM sub-system 435 stores data that the Protector Unit 431 may fetch or obtain or query; for example, indicating to the Protector Unit 431 the data associated with the IoT account or the subscriber account of a particular IoT device that is monitored, as well as the relevant contact details (e.g., email address, telephone number) of a relevant focal point of contact of such IoT device (e.g., in order to alert such recipient about a currently-detected risk or a current attack, or about a current mitigation operation being deployed).

System 400, and particularly its Protector Unit 431 and its Probes 432-433, may be configured to detect and/or mitigate a “Signaling Storm”, which is a particular type of DDoS attack. For example, the signaling storm may be generated by any type of connected IoT devices or hosts, and may be characterized by an abnormally large number of control packets per time-unit (e.g., per second, or per minute). The signaling storm that system 400 may detect and/or mitigate, may be an attack which attempts to overload the Air Interface and/or the Core Network Function(s) that are responsible for processing of control flows.

The Applicants have realized that in some scenarios, when a single IoT device transmits control messages permanently (e.g., continuously causing restart of the host), the RAN may be able to detect such abnormal communication activity of the IoT device and may be able to quarantine it, thereby disabling communication services for such attacking IoT device. However, the Applicants have realized that in a RAN of a cellular 5G network, in view of the high density of connected IoT devices, a single IoT device may be able to generate a relatively smaller number of messages with variable frequency per time-unit; and conventional protection methods that are implemented in the RAN of 4G/LTE networks are not effective for such 5G scenarios.

For example, the Applicants have realized that an attacking IoT device in a 5G network, may leverage the fact that a Narrow-Band (NB) IoT device may transmit data (e.g., non-IP data, non-IP packets) as part of Control Messages without utilization of UP resources. Therefore, realized the Applicants, a 5G signaling storm may be formed or constructed by an attacking entity while pretending to be normal or regular IoT communication exchange, and no anomaly or no abnormal communication activity would be conventionally detected on the UP. Accordingly, realized the Applicants, a conventional UP probe would not detect malicious activity, and data that is gathered by a conventional UP probe cannot be correlated with CP counters for attack recognition and for isolation or quarantine of suspicious hosts.

System 400 operates, and implements methods, to detect and to mitigate attacks that are performed on the CP of mobile networks, and particularly on the CP of a cellular 5G network or a 5G New Radio (NR) network. Such attack may be, for example, the result of intentional infection of IoT devices for intentional DDoS attack purposes, or may be a result of a “bug” or unintentional error in a program code (e.g., original, or updated, or patched, or upgraded) or software component or firmware component of such IoT device. System 400 leverages and utilizes the fact that each one of the monitored IoT devices (or, in some embodiments, each Class or Type of IoT devices) is pre-classified or is pre-associated with a corresponding (and typically, a trusted) IoT Device Profile that is stored in a database (e.g., the IM unit and the CRM unit) accessible by the Protector Unit 431, which may fetch or obtain data about each such IoT device or at least about the type or class of IoT devices to which a particular IoT device belongs.

The pre-stored Profile, that is associated with an IoT device, or (in some implementations) is associated with a Type or a Group or a Batch of IoT devices (e.g., made by the same manufacturer; or sold by the same provider; or maintained and supported by the same provider or CSP; or owned or operated by the same client entity; or otherwise grouped or clustered), may comprise, for example, the following parameters or fields or records: (a) Device Type identifier or indicator (e.g., “Security Camera”, or “IoT Gateway”, or “Smoke Detector”, or “Smart Television”, or “Vending Machine”; (b) Manufacturer identifier (e.g., “Manufacturer-A” or “Manufacturer-B”), and optionally a Model number (e.g., “Model 123”, or “Model 456”); (c) the number of connections (e.g., cumulatively, and not necessarily concurrently), per time-unit (e.g., per second, or per minute or per hour) that the IoT device is allowed (or is expected) to create or to maintain or to request or to employ during such time-unit (e.g., up to 4 connections per minute); (d) maximum allowed or expected frequency of transmissions (e.g., up to 8 transmissions per minute, across all the connections); (e) maximum allowed or expected payload size (e.g., in bytes; per single transmission; or, per batch or group of transmissions; or, per time-unit); (f) list of one or more destinations or remote recipients (e.g., identified by their IP address or their MAC address or by DNS address or by URL or URI or other resource locator) that the IoT device is allowed or authorized to communicate with; (g) optionally, other suitable data or meta-data about the particular IoT device (e.g., type and version of Operating System (OS); date or version of last OS update or patch; date or version or identifier(s) of application(s) that run on the IoT device or that are installed on the IoT device; or the like).

System 400, and the methods and devices of the present invention, may operate in conjunction with various types of 5G deployment, and particularly in those where mobile connectivity services are provided over 5G New Radio (NR); and including, for example, two types of operational scenario. In a first type of operational scenario, the 5G NR network is controlled by (or is served or serviced or implemented by) a 4G Core Network, such as, using an Evolved Packet Core (EPC). In a second type of operational scenario, the 5G NR network is controlled by (or is served or serviced or implemented by) a 5G Core Network (5GC), namely, without relying on (or utilizing) a 4G core network.

Reference is made to FIG. 5, which is a schematic illustration of Protector Unit 431 and its components, as well as its interfaces to the mobile network(s), in accordance with some demonstrative embodiments of the present invention. Protector Unit 431 performs data processing and policy enforcement in real-time or in near-real-time, e.g., immediately upon detection of a communication session or a packet that is determined to be associated with an attacking IoT device or with a malfunctioning IoT device. It is noted that for demonstrative purposes, the RAN and the 5G Core Network are shown as interfacing with (or, providing data to) the Protector Unit 431; but although they all appear within the same rectangular box of Protector Unit 431, of course, the Protector Unit 431 does not actually include inside it the entirety of the RAN or the 5G Core Network, but rather, the Protector Unit 431 fetches or obtains or pulls from them (or from their interfaces, or from their network elements) the relevant data that the Protector Unit 431 then utilizes for analysis, policy selection or rule selection, and rules enforcement.

A Probe/Counter Unit 451 of the Protector Unit 431 may be implemented or realized as a physical device or hardware-based unit, or as a virtual network probe or cloud-based network probe; or as a Core Network function such as, in the second type of scenarios, where the Protector Unit 431 may subscribe for Events and Counters on 5GC Services, such as Access and Mobility Management Function (AMF), Network Data Analytics Function (NWDAF), or the like). The Probe/Counter Unit 451 counts messages during predefined time-windows, that originate from (or that are incoming from) any IMSI, or that originate from (or that are incoming from) a particular or specific IMSI (or, a particular set or group of IMSI numbers). Furthermore, the Probe/Counter Unit 451 is implemented as an in-line element, and in accordance with the directives or rules received from Protector's Rule Engine (RE) (discussed herein), the Probe/Counter Unit 451 may selectively discard Request messages that originated from (or that are incoming from) a quarantined host or a quarantined IoT device, and/or may cause such incoming packets to be discarded and not to be forwarded or relayed or otherwise transferred to their intended destination.

A Database 452 of Infected/Malfunctioning IoT Devices may store data reflecting, in real-time or in near-real-time, the IMSI values or IMSI numbers or IMSI strings that correspond to IoT devices that are currently estimated to be (or, determined to be) infected and/or compromised and/or attacking and/or malfunctioning (e.g., in a manner that causes abnormal communications); and further storing in such Database 452 the relevant IoT device profiles for such devices, and the rules reflecting CSP policy for isolation of infected or malfunctioning IoT devices (e.g., in general, or of a particular type of IoT devices).

A Machine Learning (ML) Engine 453 collects and analyses the counters and triggers (e.g., Threshold Crossing Alarms), which are received from the Probe/Counter Unit 452; and generates and provides Close-Loop Automation enforcing policy-based action to prevent or to mitigate adverse service impact. In some embodiments, based on the desired configuration and the available data sources, the Protector Unit 431 may isolate attacks proactively and/or automatically and/or autonomously, immediately upon detection of a compromised or malfunctioning IoT device; to thereby minimize the adverse impact on the services, and/or to prevent attacks predictively and to eliminate or reduce potential negative impact.

The ML Engine 453 comprises two units: a Predictor Unit 454, and a Rule Engine (RE) 455. The Predictor Unit 454 runs the received data through one or more ML model(s). Each such ML model may be based on a suitable ML algorithm, for example, Logistic Regression, Naive Bayes, Support Vector Machines, Decision Trees, Boosted Trees, Random Forest, Nearest Neighbor, or other suitable ML methods or Artificial Intelligence (AI) methods or deep learning methods.

In some embodiments, prediction is performed with regard to a large number of connected IoT devices, with various different profiles and in real-time; and thus, Random Forest methods may be suitable for the task, providing better performance and/or adequate accuracy.

In a demonstrative embodiment, the Prediction is calculated as:

$P = {\sum\limits_{i = 1}^{n}{\left( {\frac{1}{m}{\sum\limits_{j = 1}^{m}{W_{j}\left( {x_{i},x^{\prime}} \right)}}} \right)y_{i}}}$

wherein X={x₁, . . . x_(n)} is a training set. Each x_(i) is a function (e.g., feature) of counters value deviation from corresponding normal-operation values as defined in the profile and events/triggers. For example, the profile defines normal-operation values as low and high limit pair. The same parameter may have different pair of values, depending on day-of-week and time-of-day, or based on other variables (e.g., being a national holiday in which business operations are closed). In a demonstrative embodiment, each feature has 3 possible values, which are denoted herein as “red” or “yellow” or “green”: x={“Green”,“Yellow”,“Red”}

wherein “Green” indicates that no anomaly or abnormality or irregularity is currently detected; “Yellow” indicates that a low-level or minor anomaly or abnormality or irregularity is detected, and thus attention may be required (e.g., the IoT device is exhibiting a number of connections or transmissions or payload-size that is greater by no more than N percent from its pre-defined authorized limit; such as, N being 5 or 12 or other suitable value); “Red” indicates that a high-level or major anomaly or abnormality or irregularity is detected and that attention is certainly required (e.g., the IoT device is exhibiting a number of connections or transmissions or payload-size that is greater by N percent or more from its pre-defined authorized limit).

Other parameters in the above-mentioned Prediction formula are:

-   -   Y={y₁, . . . y_(n)} indicates a response set;     -   x′ indicates a received sample to be processed;     -   W (x_(i), x′) indicates the non-negative weight function of the         x_(i) training point relative to the new point x′ in the same         tree;     -   m indicates the number of trees;     -   n indicates the number of training points.

The Rule Engine (RE) runs received Prediction data through its own ML model.

Although one or more suitable ML models may be used by the Rule Model, some embodiments may implement Random Forest to achieve improved results and/or improved performance. In a demonstrative embodiment, the Rule Engine features are functions of the following parameters:

-   -   Prediction—value received from Predictor;     -   Device status—either service disable, or service enable;     -   Time from last status change;     -   Location—points to the relevant network segment in which the IoT         device is located;     -   Number of infected devices of the same type;     -   KPIs—Key Performance Indicators reflecting network load and/or         network-segment load;     -   Device type;     -   Day-of-Week and Time-of-Day.

As result of such run of the prediction values through the Rule Engine ML model, the Rule Engine selects a single rule, or a sequence or batch or group of rules, to be executed or enforced with regard to traffic or packets of the relevant IoT device.

Reference is made to FIG. 6A, which is a schematic illustration of a system 601, demonstrating the integration of units of the present invention in a 5G NR network controlled by EPC, or in a 5G Non-Stand Alone (NSA) network. For example, a signaling probe that communicates with Protector Unit 431 may be placed or located at Point 611 (e.g., in an Open RAN implementations), and/or at Point 612, and/or at Point 613. The signaling probe counts the following control messages per User Equipment (UE) or per IMSI: if placed at Point 611, it counts the Radio Resource Control (RRC) Connection Requests; if placed at Point 612, it counts the Attach Requests; if placed at Point 613, it counts the Create Session Requests.

In order to suspend communication services for a specific UE or IoT device, upon detection of an attack (or upon detection of an IoT device malfunction), the Protector Unit may update UE-related records or device-related records in the Home Subscriber Server (HSS) and/or in the Equipment Identity Register (EIR) (e.g., simulating or emulating a stolen SIM card, or marking the record of that IoT device as if its SIM card was stolen), optionally using a RESTful Application Programming Interface (API), or by creating suitable data files (e.g., CSV file, XML file, TXT file, or the like) and then loading them into these network functions for processing there as stolen SIM units and/or as otherwise indicating that service suspension is required. Additionally or alternatively, and particularly when interaction with neither HSS nor EIR is available (e.g., temporarily, or permanently), the Protector Unit may instruct the signaling probe to discard all packets or all messages that are incoming from the infected UE, and/or to selectively discard packets or messages that meet pre-defined criteria (e.g., to discard any message having a payload that is greater than N bytes; or, to discard any message that is incoming from the IoT device between 2 PM and 4 PM; or, to discard any message that is incoming from the IoT device and that has a particular recipient or destination).

Reference is made to FIG. 6B, which is a schematic illustration of a system 621, demonstrating the integration of units of the present invention in a 5G Stand Alone (SA) network. Since the 5G Core Network defines interfaces toward any of its functions, the Protector Unit may communicate directly with the relevant 5G Core Network functions in order to collect counters and KPI's, and in order to ensure enforcement of policy and rules. In some 5G networks, any policy modification or enforcements should be passed through a Policy Control Function (PCF). Accordingly, a signaling probe may be connected in Point 631 only if the RAN is implemented in accordance with Open RAN architecture.

In order to suspend communication services for a specific UE or IoT device upon detection of an attack (or, upon detection of IoT device malfunction), the Protector updates policies in the PCF; for example, by creating a new Packet Filter Descriptor and connecting it to a Service Suspend Policy; by associating between an IMSI being suspended and a Black-Listed policy; or the like.

Similar to the 5G NSA architecture described above, the Protector Unit may instruct the signaling probe at Point 631 to discard all packets or all messages, or to selectively discard packets or messages based on pre-defined criteria or rules; however, in some embodiments, such flow may not be native for 5G SA networks, and similar enforcements operations (e.g., comprehensive discarding of packets or messages, or selective discarding based on criteria) should typically be managed by (or passed through) the PCF of the 5G SA network.

Reference is made to FIG. 7, which is a schematic illustration of a system 700, demonstrating the deployment or integration of units of the present invention in an Open RAN cellular communication network. Most of the components shown in system 700 are conventional components; however, in accordance with the present invention, a Protector Unit/Signaling Probe 701 is implemented in the Application Layer 704 of the RAN Intelligence Controller (RIC) near-Real-Time 705; and it interfaces with the Radio Connection Management unit 702 and with the Radio-Network Information Base 703.

For example, the Protector Unit may utilize one or more signaling probes, which may operate or interwork with two components in Non-Real-Time (Non-RT) or Near-Real-Time (Near-RT) RAN Intelligence Controller (RIC) over a RESTful API: the Radio Connection Manager, and the Radio-Network Information Base; the Protector Unit and/or its associated Probes may thus obtain operational measurements and connections counters, and may utilize these components to enforce service suspension for IoT devices having suspicious IMSI values (e.g., infected, compromised, attacking, malfunctioning IoT devices).

Some embodiments may comprise a system for detecting and mitigating a 5G signaling storm generated by one or more 5G-capable devices. For example, the system comprises: a Control Plane (CP) signal probe, connected in-line at a first network node located between a Radio Access Network (RAN) and a 5G Core Network, to monitor Control Plane control messages originating from the 5G-capable devices and passing through the first network node; a User Plane (UP) signal probe, connected in-line at a second network node located between the 5G Core Network and one or more remote entities to which the 5G-capable devices are sending messages, to monitor User Plane control messages passing through the second network node; an Inventory Management (IM) sub-system, to store data correlating between a particular 5G-capable device and an International Mobile Subscriber Identity (IMSI) number allocated to it; and, a Protector Unit, configured (A) to receive (i) data collected by the CP signal probe, and (ii) data collected by the UP signal probe, and (iii) a subset of IMSI numbers from the IM sub-system, and (B) to generate a list of particular 5G-capable devices that are detected to be compromised or malfunctioning, and (C) to trigger quarantining of control messages outgoing from said particular 5G-capable devices that are in said list.

In some embodiments, the Protector Unit is to perform analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe, and based on said analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning.

In some embodiments, the Protector Unit is to select a particular protection policy, from a pool of pre-defined protection policies, based on one or more characteristics of said particular 5G-capable device.

In some embodiments, based on said particular protection policy, the Protector Unit is to dynamically configure the Control Plane signal probe, to discard at the first network node all outbound control messages that are outgoing from said particular 5G-capable device.

In some embodiments, based on said particular protection policy, the Protector Unit is to dynamically configure the User Plane signal probe, to discard at the second network node all outbound control messages that are outgoing from said particular 5G-capable device.

In some embodiments, based on said particular protection policy, the Protector Unit is to dynamically configure the Control Plane signal probe, to selectively discard at the first network node only outbound control messages that are outgoing from said particular 5G-capable device to a particular destination.

In some embodiments, based on said particular protection policy, the Protector Unit is to dynamically configure the User Plane signal probe, to selectively discard at the second network node only outbound control messages that are outgoing from said particular 5G-capable device to a particular destination.

In some embodiments, the Protector Unit is to perform Machine Learning analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe, and based on said Machine Learning analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning. In some embodiments, said Machine Learning analysis comprises at least a Random Forest analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe.

In some embodiments, in said Random Forest analysis, each point is a feature of deviation of counters from corresponding pre-defined normal-operation range-of-values represented as a pair of minimum value and maximum value.

In some embodiments, in said Random Forest analysis, each point is allocated a value that corresponds to either (i) an indicator of regular communications by the 5G-capable device, or (ii) an indicator of minor abnormality that is below a pre-defined threshold value of abnormal communications, or (iii) an indicator of major abnormality that is equal to or greater than said pre-defined threshold value of abnormal communications.

In some embodiments, the Protector Unit is to perform Machine Learning analysis of (i) values of message counters per time-unit per IMSI number, and (ii) a pre-defined Device Profile that indicates a normal range for the number of control messages that a particular 5G-capable device is authorized to send per time-unit; and based on said Machine Learning analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning. In some embodiments, the Protector Unit is to perform Random Forest analysis of (i) values of message counters per time-unit per IMSI number, and (ii) a pre-defined Device Profile that indicates a normal range for the number of control messages that a particular 5G-capable device is authorized to send per time-unit; and based on said Random Forest analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning.

In some embodiments, upon detection that a particular 5G-capable device is compromised or malfunctioning, the Protector Unit is to perform a Machine Learning analysis to select one or more policy rules to be enforced on outbound control messages of said particular 5G-capable device.

In some embodiments, upon detection that a particular 5G-capable device is compromised or malfunctioning, the Protector Unit is to perform a Random Forest analysis to select one or more policy rules to be enforced on outbound control messages of said particular 5G-capable device.

In some embodiments, said Random Forest analysis utilizes at least two of the following features: an indicator of whether the particular 5G-capable device exhibits minor abnormality or major abnormality in communications; an indicator of a network segment in which said particular 5G-capable device is located; a network load indicator, representing network load across a particular network segment; a number indicating how many 5G-capable devices that are of the same type of said particular 5G-capable device, are determined to be compromised or malfunctioning.

In some embodiments, the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is a Next Generation NodeB (gNB) and is prior to an Xn interface.

In some embodiments, the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is located between a Next Generation NodeB (gNB) and a Mobility Management Entity (MME).

In some embodiments, the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is located between a Mobility Management Entity (MME) and a Serving Gateway Control-Plane (S-GW-C) Function.

In some embodiments, the Protector Unit is to trigger full quarantine or selective quarantine of outbound control messages of a particular 5G-capable device, by dynamically modifying a record associated with said particular 5G-capable device, in at least one of: a Home Subscriber Server (HSS), an Equipment Identity Register (EIR); wherein said record is modified by the Protector Unit to indicate that a SIM card of said 5G-caapable device was stolen; wherein said record, once modified by the Protector Unit, causes suspension of cellular communication services to said particular 5G-capable device.

In some embodiments, the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is located between a Mobility Management Entity (MME) and a Serving Gateway Control-Plane (S-GW-C) Function.

In some embodiments, the Radio Access Network (RAN) is an Open RAN (O-RAN); wherein the Protector Unit is implemented in an Application Layer of a RAN Intelligence Controller (RIC) near-Real-Time; wherein the Protector Unit operates by interfacing with a Radio Connection Management unit and with a Radio-Network Information Base of said Open RAN.

In some embodiments, the User Plane (UP) signal probe performs User Plane monitoring of at least: SYN messages, SYN-ACK messages, FIN messages, FIN-ACK messages, ACK messages, and Selective ACK (SACK) messages; the Control Plane (CP) signal probe performs Control Plane monitoring of at least: RRC Connection Requests, Attach Requests, Create Session Requests; and the Protector Unit determines that a particular IoT device is compromised or malfunctioning, based on Machine Learning (ML) analysis of both (i) control messages monitored by the UP signal probe in the User Plane, and (ii) control messages monitored by the CP signal probe in the Control Plane.

Some embodiments include a method for detecting and mitigating a 5G signaling storm generated by one or more 5G-capable devices. The method comprises: at a Control Plane (CP) signal probe, connected in-line at a first network node located between a Radio Access Network (RAN) and a 5G Core Network, monitoring Control Plane control messages originating from the 5G-capable devices and passing through the first network node; at a User Plane (UP) signal probe, connected in-line at a second network node located between the 5G Core Network and one or more remote entities to which the 5G-capable devices are sending messages, monitoring User Plane control messages passing through the second network node; at an Inventory Management (IM) sub-system, storing data correlating between a particular 5G-capable device and an International Mobile Subscriber Identity (IMSI) number allocated to it; at a Protector Unit, (A) receiving (i) data collected by the CP signal probe, and (ii) data collected by the UP signal probe, and (iii) a subset of IMSI numbers from the IM sub-system, and (B) generating a list of particular 5G-capable devices that are detected to be compromised or malfunctioning, and (C) triggering quarantining of control messages outgoing from said particular 5G-capable devices that are in said list.

Functions, operations, components and/or features described herein with reference to one or more embodiments of the present invention, may be combined with, or may be utilized in combination with, one or more other functions, operations, components and/or features described herein with reference to one or more other embodiments of the present invention. The present invention may thus comprise any possible or suitable combinations, re-arrangements, assembly, re-assembly, or other utilization of some or all of the modules or functions or components that are described herein, even if they are discussed in different locations or different chapters of the above discussion, or even if they are shown across different drawings or multiple drawings.

While certain features of some demonstrative embodiments of the present invention have been illustrated and described herein, various modifications, substitutions, changes, and equivalents may occur to those skilled in the art. Accordingly, the claims are intended to cover all such modifications, substitutions, changes, and equivalents. 

What is claimed is:
 1. A system for detecting and mitigating a 5G signaling storm generated by one or more 5G-capable devices, the system comprising: a Control Plane (CP) signal probe, connected in-line at a first network node located between a Radio Access Network (RAN) and a 5G Core Network, to monitor Control Plane control messages originating from the 5G-capable devices and passing through the first network node; a User Plane (UP) signal probe, connected in-line at a second network node located between the 5G Core Network and one or more remote entities to which the 5G-capable devices are sending messages, to monitor User Plane control messages passing through the second network node; an Inventory Management (IM) sub-system, to store data correlating between a particular 5G-capable device and an International Mobile Subscriber Identity (IMSI) number allocated to it; a Protector Unit, configured (A) to receive (i) data collected by the CP signal probe, and (ii) data collected by the UP signal probe, and (iii) a subset of IMSI numbers from the IM sub-system, and (B) to generate a list of particular 5G-capable devices that are detected to be compromised or malfunctioning, and (C) to trigger quarantining of control messages outgoing from said particular 5G-capable devices that are in said list; wherein the Protector Unit is configured to perform Machine Learning analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe, and based on said Machine Learning analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning; wherein said Machine Learning analysis comprises at least a Random Forest analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe; wherein in said Random Forest analysis, each point is a feature of deviation of counters from corresponding pre-defined normal-operation range-of-values represented as a pair of minimum value and maximum value; wherein in said Random Forest analysis, each point is allocated a value that corresponds to either (i) an indicator of regular communications by the 5G-capable device, or (ii) an indicator of minor abnormality that is below a pre-defined threshold value of abnormal communications, or (iii) an indicator of major abnormality that is equal to or greater than said pre-defined threshold value of abnormal communications.
 2. The system of claim 1, wherein the Protector Unit is to perform analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe, and based on said analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning.
 3. The system of claim 2, wherein the Protector Unit is to select a particular protection policy, from a pool of pre-defined protection policies, based on one or more characteristics of said particular 5G-capable device.
 4. The system of claim 3, wherein, based on said particular protection policy, the Protector Unit is to dynamically configure the Control Plane signal probe, to discard at the first network node all outbound control messages that are outgoing from said particular 5G-capable device.
 5. The system of claim 3, wherein, based on said particular protection policy, the Protector Unit is to dynamically configure the User Plane signal probe, to discard at the second network node all outbound control messages that are outgoing from said particular 5G-capable device.
 6. The system of claim 3, wherein, based on said particular protection policy, the Protector Unit is to dynamically configure the Control Plane signal probe, to selectively discard at the first network node only outbound control messages that are outgoing from said particular 5G-capable device to a particular destination.
 7. The system of claim 3, wherein, based on said particular protection policy, the Protector Unit is to dynamically configure the User Plane signal probe, to selectively discard at the second network node only outbound control messages that are outgoing from said particular 5G-capable device to a particular destination.
 8. The system of claim 1, wherein the Protector Unit is to perform Machine Learning analysis of (i) values of message counters per time-unit per IMSI number, and (ii) a pre-defined Device Profile that indicates a normal range for the number of control messages that a particular 5G-capable device is authorized to send per time-unit; and based on said Machine Learning analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning.
 9. The system of claim 1, wherein the Protector Unit is to perform Random Forest analysis of (i) values of message counters per time-unit per IMSI number, and (ii) a pre-defined Device Profile that indicates a normal range for the number of control messages that a particular 5G-capable device is authorized to send per time-unit; and based on said Random Forest analysis, to generate a determination that a particular 5G-capable device is compromised or malfunctioning.
 10. The system of claim 1, wherein, upon detection that a particular 5G-capable device is compromised or malfunctioning, the Protector Unit is to perform a Machine Learning analysis to select one or more policy rules to be enforced on outbound control messages of said particular 5G-capable device.
 11. The system of claim 1, wherein, upon detection that a particular 5G-capable device is compromised or malfunctioning, the Protector Unit is to perform a Random Forest analysis to select one or more policy rules to be enforced on outbound control messages of said particular 5G-capable device.
 12. The system of claim 11, wherein said Random Forest analysis utilizes at least two of the following features: an indicator of whether the particular 5G-capable device exhibits minor abnormality or major abnormality in communications; an indicator of a network segment in which said particular 5G-capable device is located; a network load indicator, representing network load across a particular network segment; a number indicating how many 5G-capable devices that are of the same type of said particular 5G-capable device, are determined to be compromised or malfunctioning.
 13. The system of claim 1, wherein the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is a Next Generation NodeB (gNB) and is prior to an Xn interface.
 14. The system of claim 1, wherein the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is located between a Next Generation NodeB (gNB) and a Mobility Management Entity (MME).
 15. The system of claim 1, wherein the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is located between a Mobility Management Entity (MME) and a Serving Gateway Control-Plane (S-GW-C) Function.
 16. The system of claim 1, wherein the Protector Unit is to trigger full quarantine or selective quarantine of outbound control messages of a particular 5G-capable device, by dynamically modifying a record associated with said particular 5G-capable device, in at least one of: a Home Subscriber Server (HSS), an Equipment Identity Register (EIR), wherein said record is modified by the Protector Unit to indicate that a SIM card of said 5G-capable device was stolen; wherein said record, once modified by the Protector Unit, causes suspension of cellular communication services to said particular 5G-capable device.
 17. The system of claim 1, wherein the Protector Unit is connected to a particular network node, and monitors outbound control signals that pass through said particular network node, and causes selective discarding of control messages that pass through said particular network node; wherein said particular network node is located between a Mobility Management Entity (MME) and a Serving Gateway Control-Plane (S-GW-C) Function.
 18. The system of claim 1, wherein the Radio Access Network (RAN) is an Open RAN (O-RAN); wherein the Protector Unit is implemented in an Application Layer of a RAN Intelligence Controller (RIC) near-Real-Time; wherein the Protector Unit operates by interfacing with a Radio Connection Management unit and with a Radio-Network Information Base of said Open RAN.
 19. The system of claim 1, wherein the User Plane (UP) signal probe performs User Plane monitoring of at least: SYN messages, SYN-ACK messages, FIN messages, FIN-ACK messages, ACK messages, and Selective ACK (SACK) messages; wherein the Control Plane (CP) signal probe performs Control Plane monitoring of at least: RRC Connection Requests, Attach Requests, Create Session Requests; wherein the Protector Unit determines that a particular IoT device is compromised or malfunctioning, based on Machine Learning (ML) analysis of both (i) control messages monitored by the UP signal probe in the User Plane, and (ii) control messages monitored by the CP signal probe in the Control Plane.
 20. The system of claim 1, wherein, based on said particular protection policy, the Protector Unit is to dynamically configure the Control Plane signal probe, to discard all outbound control messages that are outgoing from said particular 5G-capable device.
 21. The system of claim 1, wherein, based on said particular protection policy, the Protector Unit is to dynamically configure the Control Plane signal probe, to selectively discard only outbound control messages that are outgoing from said particular 5G-capable device to a particular destination.
 22. A method for detecting and mitigating a 5G signaling storm generated by one or more 5G-capable devices, the system comprising: at a Control Plane (CP) signal probe, connected in-line at a first network node located between a Radio Access Network (RAN) and a 5G Core Network, monitoring Control Plane control messages originating from the 5G-capable devices and passing through the first network node; at a User Plane (UP) signal probe, connected in-line at a second network node located between the 5G Core Network and one or more remote entities to which the 5G-capable devices are sending messages, monitoring User Plane control messages passing through the second network node; at an Inventory Management (IM) sub-system, storing data correlating between a particular 5G-capable device and an International Mobile Subscriber Identity (IMSI) number allocated to it; at a Protector Unit, (A) receiving (i) data collected by the CP signal probe, and (ii) data collected by the UP signal probe, and (iii) a subset of IMSI numbers from the IM sub-system, and (B) generating a list of particular 5G-capable devices that are detected to be compromised or malfunctioning, and (C) triggering quarantining of control messages outgoing from said particular 5G-capable devices that are in said list; wherein the method comprises: at the Protector Unit, performing Machine Learning analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe, and based on said Machine Learning analysis, generating a determination that a particular 5G-capable device is compromised or malfunctioning; wherein said Machine Learning analysis comprises at least a Random Forest analysis of (i) data collected by the Control Plane signal probe and (ii) data collected by the User Plane signal probe; wherein in said Random Forest analysis, each point is a feature of deviation of counters from corresponding pre-defined normal-operation range-of-values represented as a pair of minimum value and maximum value; wherein in said Random Forest analysis, each point is allocated a value that corresponds to either (i) an indicator of regular communications by the 5G-capable device, or (ii) an indicator of minor abnormality that is below a pre-defined threshold value of abnormal communications, or (iii) an indicator of major abnormality that is equal to or greater than said pre-defined threshold value of abnormal communications. 